Release 10.1A: OpenEdge Development:
Internationalizing Applications
Modifying Progress collation tables
Modifying collation tables is somewhat different from modifying the other nonword-break character-processing tables. You must first dump the collation table, edit it, load the modified table, and rebuild the indexes.
Note: If you need to modify an International Components for Unicode (ICU) collation, contact Progress Software Technical Support for assistance.Preliminary considerations
Before you modify the database’s collation tables, check the
DLC/prolangdirectory for region-specific data definition (.df) files. These are database collation files that can be loaded into an empty database. OpenEdge provides a collection of data definition files, one of which might suit your collation needs. For example, theDLC/prolang/gerdirectory contains the German-specific data definition filesger850.dfandger8859.df.To modify how 4GL comparisons are performed, start OpenEdge against the database that contains the collation tables you want, or use the collation table (
-cpcoll) startup parameter to point to the collation tables you want. When you specify a collation table using the-cpcollstartup parameter, you can point only to tables that reside in theconvmap.cpfile. If the collation/code-page pair you want does not reside inconvmap.cp, you can build your own collation table, as described in the "Editing the collation table" section.Dumping a collation table
Dumping a collation table is the first step in modifying the table.
![]()
To dump a collation table:
The
_tran.dffile contains the collation table for your database. Figure 3–5 shows a sample_tran.dffile.
Figure 3–5: Sample _tran.df file Note: The IBM850 code page that appears in the trailer of the sample
_tran.dffile in Figure 3–5 is not the code page name of the database. It is the code page that was used to write out the data definition (.df) file.Editing the collation table
As you read this section, refer to Figure 3–3, which shows a Greek collation table.
To modify the
CASE-INSENSITIVE-SORT andCASE-SENSITIVE-SORTtables, use your favorite text editor.A collation table for a single-byte code page must provide 256 values in 16 rows of 16 cells. The number you provide for each cell is a three-digit decimal. A collation name cannot exceed 19 characters and can include the characters A–Z, a–z, 0–9, and the dash (-).
The keyword
COLLATIONtells OpenEdge that the following table entry is for 4GL comparisons. The keywordCODEPAGE-NAMEspecifies the name of the code page that the collations are for. The keywordCOLLATION-NAMEspecifies a name for the collation.At run time, OpenEdge searches the
convmap.cpfile (or an equivalent file) to locate the correct collation tables. As a key to these tables, OpenEdge uses the collation name (specified by-cpcoll) and a code page name (specified by-cpinternal). The names specified for these parameters must match the names in theconvmap.cpfile. These names are case insensitive.The keyword
COLLATION-TRANSLATION-VERSIONspecifies a value that OpenEdge uses internally. Progress Software Corporation recommends you specify the value 1.1-16 for single-byte collations.The
CASE-INSENSITIVE-SORTandCASE-SENSITIVE-SORTtables are identical to those used for a database and operate the same way. You modify them in the same way. For information on how to modify these tables, see the "Modifying Progress collation tables" section.The
ENDTABLEkeyword tells OpenEdge the table is finished. TheENDCOLLATIONkeyword tells OpenEdge that the collation entry is complete.Loading the modified collation table
Loading the modified collation table is the next step in modifying the table.
![]()
To load the modified table back into the database:
Rebuilding the indexes
The Data Administration tool loads schema information into the database. Before the database can use the modified tables, you must run the rebuild the database’s indexes. To do so, run the
PROUTILutility with theIDXBUILDmodifier.The database cannot be in use when you do this.
The syntax of the
PROUTILutility with theIDXBUILDqualifier is:
For the complete syntax of the
PROUTILutility, see OpenEdge Data Management: Database Administration .Modifying, compiling, and providing access to the CONVMAP file
You must still:
- Modify the
convmap.datfile. For more information, see the "Modifying convmap.dat or a file it includes" section.- Compile the
convmap.datfile. For more information, see the "Compiling the convmap.dat file" section.- Provide access to the resulting
convmap.cpfile. For more information, see the "Providing access to the convmap.cp file" section.
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |